Devices incorporating a redundant array of inexpensive disks (RAID) are in common use. Such devices function as storing units that include a plurality of devices corresponding to fibre channel interfaces (hereinafter, referred to as “FC I/Fs”), such as hard disk drives (HDDs) or solid state drives (SSDs).
The RAID devices store therein, in a redundant manner, data stored in devices that constitute a RAID, such as RAID-0 or RAID-5, so that the RAID devices can hold data to be stored even when a single device fails because RAID controllers of the RAID devices perform the overall control of the RAID devices, i.e., control the RAID level, such as RAID-0 or RAID-5.
Furthermore, each device corresponding to an FC I/F has two FC I/Fs. The RAID controllers also have two-system device adapters (hereinafter, referred to as “DAs”) that directly access two corresponding FC I/Fs that are included in the devices. The maximum number of devices that can be connected to a single DA is 126.
Such a RAID device recognizes devices connected to the RAID device by using an initialization process (loop initialization) of the FC I/Fs or “Port Login”. Specifically, when the RAID device starts the initialization process of the FC I/Fs, among all of the devices including the DAs, the RAID device compares world wide names (WWNs) assigned to each device. Then, the RAID device determines that a device that holds the minimum WWN is a loop master. In other words, a loop master is determined in accordance with a comparison of the WWNs among the devices.
Specifically, each device connected to the RAID device sends a frame that includes the WWN of the device to the subsequent device on an FC loop path. Then, if the device receives a frame that includes a WWN from another device, the device determines whether the WWN is greater than the WWN that is held by the device. If the WWN that is included in the received frame is greater than the WWN held by the device, the device adds the WWN held by the device to the received frame and sends the frame to the subsequent device on the FC loop path. In contrast, if the WWN that is included in the received frame is smaller than the WWN held by the device, the device sends that frame without processing anything to the subsequent device on the FC loop path. After all of the devices perform the above-described comparison and update of the WWN, a device that receives a frame that includes its own WWN is determined to be the loop master.
Subsequently, the loop master assigns, to each device, a physical address, i.e., an Arbitrated Loop Physical Address (AL_PA), creates a MAP of the AL_PA starting from an AL_PA of the loop master, obtains, for example, a connection location of each device, and completes the initialization process.
Thereafter, DAs of the RAID controllers issue, to each device, a “PortLogin” command, obtain a WWN from each device, and recognize each device connected thereto. Then, the RAID controllers compare, for each device, WWNs obtained by the two-system DAs. If the WWNs match, the WWNs obtained by the DAs are recognized as the WWN of the device.    Patent Document 1: Japanese Laid-open Patent Publication No. 10-069459    Patent Document 2: Japanese Laid-open Patent Publication No. 2003-158526    Patent Document 3: Japanese Laid-open Patent Publication No. 2005-208971    Non-patent Document 1: “Fibre channel arbitrated loop (FC-AL) Rev. 4.5”, working draft proposal American National Standard for Information Technology, Jun. 1, 1995
However, with the conventional technology, there is a problem in that a device in which abnormality occurs at a protocol level may not be detected. Specifically, with the conventional technology, because detection of electrical failure that is output from a device is performed, it is not possible to detect, as an abnormal device, a device that seems to be operating normally. For example, it is not possible to detect a device in which a bit error occurs in a loop initialization select master (LISM) frame that is transmitted/received by each device in the initialization process and that is used for determining the loop master.
Specifically, a case in which an abnormal device may not be detected is a case both in which a bit error occurs in an S_ID or a D_ID that is an identifier included in the LISM frame and is also in which a cyclic redundancy check (CRC), corresponding to the S_ID or the D_ID in which the bit error occurs, is added. In such a case, because the CRC is not abnormal, the RAID device erroneously recognizes the value of the S_ID or the D_ID as a normal value even though it is an incorrect value representing an abnormal state. As a result, the RAID device controls each device connected to the RAID device without detecting the abnormality and therefore the normal operation of the DA may not be guaranteed.
Furthermore, a case in which an abnormal device may not be detected is a case both in which a bit error occurs in a WWN that is included in the LISM frame and also in which the device adds a CRC corresponding to a WWN where a bit error occurs. Each device compares the WWN in the received LISM frame with the WWN that is held by each device. If a WWN held by a device is smaller than the WWN in the received LISM frame, the device sends its own WWN to the subsequent device by adding its own WWN to the LISM frame. Accordingly, if the RAID device receives a LISM frame that passes each device, the RAID device determines the WWN that is added to the LISM frame as the WWN having the minimum value and determines the device that holds that WWN as a loop master. Specifically, because the RAID device may not recognize the WWNs of all devices, the RAID device may not determine whether a WWN added to the LISM frame passing each device is a WWN having the minimum value due to the bit error.
As a result, the RAID device erroneously determines the device that holds the WWN having the minimum number due to the bit error as a loop master; therefore, the operation of the RAID device itself may not be guaranteed. A physical address of a sending source is stored in the S_ID after initialization and a physical address of a destination is stored in the D_ID after initialization.